package org.crazyit.activiti_d2._5_Sort;

import org.activiti.engine.IdentityService;
import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngines;
import org.activiti.engine.identity.Group;

import java.util.List;

public class Sort {

    public static void main(String[] args) {

        //1. 创建流程引擎
        ProcessEngine engine = ProcessEngines.getDefaultProcessEngine();

        //2. 得到身份服务组件实例
        IdentityService identityService = engine.getIdentityService();

        System.out.println("asc 排序结果");

        /*
            3. 调用orderByGroupId() 和asc() 方法, 结果为按照ID 升序排序
            由于上一个类中已经写入了数据, 所以这边直接查询
         */
        List<Group> list1 = identityService.createGroupQuery().orderByGroupName().asc().list();

        //4. 遍历输出查询结果集
        for (Group data : list1) {
            System.out.println("   " + data.getId() + "---" + data.getName());
        }

        System.out.println("desc 排序结果");

        /*
            5. 调用orderByGroupName() 和desc() 方法, 结果为按照名称降序排序
            由于上一个类中已经写入了数据, 所以这边直接查询
         */
        List<Group> list2 = identityService.createGroupQuery().orderByGroupName().desc().list();

        //6. 遍历输出查询结果集
        for (Group data : list2) {
            System.out.println("   " + data.getId() + "---" + data.getName());
        }

    }

}
